The present invention relates to printers or laminators such as those used to print or laminate identification cards. More specifically, the invention relates to operation of a controller used in controlling such printers.
Printers are used for recording images onto a substrate. One type of printer is an identification card printer used for printing onto plastic identification cards.
Plastic ID card printers are used in applications where plastic cards may be constructed, printed, laminated, encoded and cut to size. Driver""s licenses for countries and states are often manufactured with a plastic ID card printer. There are many places which require the use of personal ID cards for security and financial transactions. One type of plastic ID card printer uses blank pre-cut cards which are fed into a printer for encoding of data media on the card, printing of an image or text, lamination of one or both sides and for validation of the encoded data. Another type of plastic ID card printer use a card which is constructed from three web based materials which are melted together with an image printed on the inside of one of the layers, and the web is cut to size. This is illustrated, for example, in U.S. Pat. No. 5,413,532.
Plastic ID card printers are frequently used for preparing high volumes of cards in a short period of time. A common example of this type of application is the issuance of driver""s licenses where a queue of people have their photo taken, the photos are rasterized and used for printing and driver""s licenses constructed while the subjects wait. Such card printers used for the production of driver""s licenses are typically limited in their production capacity to about 90 cards/hour.
It is also common for printing bureaus to use plastic ID card printers for production of large volumes of cards in a short period of time. These types of plastic ID card printers are typically capable of printing single sided three color cards at a rate of about 180 cards/hour.
In both of the above applications, there is a high throughput of cards from a single printer. Service bureau""s may choose to invest in multiple printers which can be spooled to provide for larger volumes of cards. However, multiple card printers for the issuance of driver""s licenses may reduce the length of the queue but not the waiting time.
ID card printers and multi-web driver""s license printers are throughput performance limited. The performance limits are ultimately established by the thermodynamic process time constants of dye diffusion from thermal printing, time-temperature time constants from laminating and material transporting. Further, today""s printers are critically performance limited by the design of the microcontrollers"" software structure that is used for operating and controlling the printer actuation devices and control loops.
The embedded CPU in the printers are severely taxed by computationally intensive processes such as print head control. Most printers give priority to the printing process and attempt to execute other processes during idle time. As a consequence of this xe2x80x9cround robinxe2x80x9d or interrupt driven tasking, many of the process steps required to make a card are executed serially. The result is a slow card production process.
A printer or laminator for printing or laminating on a substrate includes an input configured to receive data, a print mechanism configured to print an image on the substrate, and a controller coupled to the input and the print mechanism configured to actuate the print mechanism in response to the input. The controller includes a microprocessor and memory containing a multi-threaded operating system and programming instructions for the microprocessor. The memory implements a plurality of stacks, each stack related to a thread. The programming instructions include a plurality of separate programs and the operating system executes some programs as separate threads and stores information related to each thread on a respective stack in the memory.